Configuration files may be used to influence the execution of computer readable instructions. This allows a user to affect the execution of executable instructions by simply editing relevant entries in the configuration file. Without such configuration files, the source code of the computer readable instructions would need to be updated and recompiled, which may take a considerable amount of time. Often, only few people have access to the source code. Therefore, computer readable instructions may contain commands that search for certain entries contained in the configuration file. Such entries may govern certain functions of the program. For example, an entry in the configuration file may be “DATABASE=C:/system/database.” This may instruct a program to retrieve records from a database located in a folder “C:/system/database.” The computer readable instructions may contain commands therein that searches specifically for the variable “DATABASE.” The instructions may then detect the value associated with the variable “DATABASE” and search for a database located in the folder “C:/system/database.”
As new versions of the program develop, a new version may be configured to search for entries that are different than those they were configured for previously. For example, an older version of the program may have been configured to search for the entry containing the variable “DATABASE,” but a newer version of the program may be configured to search for the entry containing the variable “DATABASE_LOCATION” in lieu of “DATABASE.” A configuration file containing the older variable may be deemed incompatible with the new version of the program. Configuration files may include a version number associated with a particular release of a program to indicate the version with which the configuration file is compatible. If the version number detected in the configuration file is different than the version associated with a new release, the new version may contain modules therein that alter the entries so as to make the configuration file compatible therewith. Once the configuration file is updated, the program may proceed without encountering incompatible configuration file entries.